package cn.cloudheritagefeign.service;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

@FeignClient(name = "heritage-service", path = "/api/Heritage", fallback = HeritageFeignClientFallback.class)
public interface HeritageFeignClient {

    @GetMapping("/test-lb")
    ResponseEntity<String> testLoadBalancer();

    @GetMapping("/product/{id}")
    ResponseEntity<Object> getProductById(@PathVariable("id") Long id);

    // 如果需要调用其他端点，可以在这里继续添加
    // 例如，调用 getDistinctStorageAreas 端点:
    // @GetMapping("/distinct-storage-areas")
    // ResponseEntity<List<StorageAreaNameDto>> getDistinctStorageAreas();
    // 注意：如果这里用到了 StorageAreaNameDto，那么这个 DTO 类也需要能被 cloud-inventory-warning-feign 模块访问到。
    // 这通常意味着需要将 DTO 类放到一个共享的 common/api 模块中，或者在这个 Feign 模块中复制一份（不推荐）。
    // 目前我们先只关注 test-lb 端点。
}